import com.asistogal.model.Actividad
import com.asistogal.model.Inscrito
import com.googlecode.objectify.ObjectifyService

def nombre = params.nombre
def apellidos = params.apellidos
def correo = params.correo
def telefono = params.telefono
def actividad = params.actividad
def numeroPlazas = params.numeroPlazas

def action = params.action ?: "list"

log.info "action: $action"
log.info "nombre: $nombre"

create = {
    if (nombre && apellidos && correo && telefono && actividad && numeroPlazas) {
    log.info "se crea una inscripcion...."
        def inscrito = new Inscrito()
        
        inscrito.nombre = nombre
        inscrito.apellidos = apellidos
        inscrito.correo = correo
        inscrito.telefono = telefono
        inscrito.numeroPlazas = numeroPlazas as Integer
        inscrito.setActividad(actividad as Long)
        
        inscrito.store()
        
        request.mensaxe="inscrito creada."
        
        enviaCorreo(correo, nombre)
    }
    
    list()

}

list = {
    def inscritos = Inscrito.search(filter:[:])
    
    
    
    
    request.inscritos = inscritos
    
    inscritos.each {
        def act = obtieneActividad(it.actividad)
        it.nombreActividad = act
    } 
    
    
    forward "/WEB-INF/pages/inscritos.gtpl"
}




this."$action".call()


def obtieneActividad(def act) {
    //log.info "clase: ${act.class.name}"
    def actividad = Actividad.fetch(act.id)
    log.info "clase: ${actividad.class.name}"
    return actividad.nombre
}


def enviaCorreo(String correo, String nomeCompleto) {
	
	
	mail.send sender: "info@asistogal.com",
	to: correo,
	subject: "Confirmación de inscripción",
	textBody: """
		Hola ${nomeCompleto},
		
		Hemos reservado una plaza en....
		
		
		
		Saludos
		"""
	
}